#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/wait.h>

/* 这是一个用子进程来运行ls -l的程序*/

int main(void){
	pid_t child_pid;
	
	child_pid = fork();

	if(child_pid == -1){
		perror("Failed to fork!");
		return 1;
	}else if(child_pid == 0){
		// 使用execl函数在子进程中调用与父进程不同的代码
		execl("/bin/ls", "ls", "-l", NULL );
		perror("Child failed to exedc ls");
		return 1;
	}else{
		perror("Parent failed to wait due to signal or error");
		return 1;
	}

	return 0;

}

